//保存所有的登录状态
//引入登录api
import { $accountLogin } from "@/api";
//引入路由
import router from '@/router';

const user = {
    state: {
        account:"",//用户名
        username:"",//中文名字
        type:"",//权限，1 超级管理员  2 观察员  3 普通管理员
        token:"",//token 令牌，登录成功后，右后台颁发
    },
    mutations:{
        //用户名
        SET_ACCOUNT(state,account){
            state.account = account;
        },
        //中文名字
        SET_USERNAME(state,username){
            state.username = username;
        },
        //权限，1 超级管理员  2 观察员  3 普通管理员
        SET_TYPE(state,type){
            state.type = type;
        },
        //token 令牌，登录成功后，右后台颁发
        SET_TOKEN(state,token){
            state.token = token;
        },
    },
    actions: {
        //登录的动作
        LoginAction({commit},userInfo){
            //调用后台接口
            $accountLogin(userInfo).then(res=>{
                console.log(res);
                if (res.data.code === 666){
                    //设置 mutations
                    console.log("登录成功")
                    console.log(commit);
                    commit('SET_ACCOUNT',res.data.data.account);
                    commit('SET_USERNAME',res.data.data.username);
                    commit('SET_TYPE',res.data.data.type);
                    commit('SET_TOKEN',res.data.token);
                    //路由跳转到首页
                    router.push('/home/dashboard');
                }
            });
        },
        LogoutAction({commit}) {
            console.log("退出",commit);
            commit('SET_ACCOUNT',"");
            commit('SET_USERNAME',"");
            commit('SET_TYPE',"");
            commit('SET_TOKEN',"");
            //路由跳转到登录
            router.push('/login');
        }
    }
}

export default user;